1. Field of the Invention
The present invention relates to monitoring the despooling of a print job. In particular, the present invention relates to systems and methods for providing an integrated printer capabilities/status monitor having a front end (i.e., printer driver) and a back end (i.e., print processor) of the printing process for identifying printers, printing capabilities, and status of printers, and for providing a printing device switchout and job completion notification, such that the capabilities and the printing process may be determined and monitored in a unified manner throughout the processing of the print job.
2. Background and Related Art
Current techniques used to monitor a print job are performed through an independent process. For example, in the Microsoft® Windows family of operating systems, a printer monitor independently monitors the spooling of a print job. Generally, the printer monitor monitors the spooling process. If the print job is locally despooled, as with a locally connected printer, or directly despooled to a remote printer, the progress of despooling the print data to the printing device is monitored. If the print job is remotely despooled, as with a print server, the progress of despooling a print job from the print server to the printing device is monitored. While this technique is available, it does not monitor the progress of the print job on the printing device.
Several products exist that independently monitor the status of a printing device. One such product is Sharp® Corporation's Status Monitor, version 3.0, which employs a technique where the printer monitor polls the printing device (e.g., SNMP, IPP) to find its current printing status.
The printer's status is typically categorized as “offline,” “ready to print,” “busy,” “error state,” or “warning state.” Examples of an offline status include “software offline” (e.g., control panel), “non-communicating” (e.g., power-off), or “non-responsive” (e.g., faulty component). Examples of a ready to print status include “cool” (e.g., printing engine needs to warm up), “warming up” (e.g., printing engine is warming up), or “ready” (e.g., printing engine is warmed up). Examples of a busy status include “processing print data” (e.g., print data downloaded, but printing has not started printing) or “printing print data” (e.g., printing has started). Examples of an error state status include “print job failure” (e.g., paper jam, load paper, etc.), “fault” (e.g., component faulted), or “unprocessed” (e.g., cannot process print data, such as unrecognized PDL). Examples of warning state status include “resource low” (e.g., low toner).
While this technique solves the problem of not monitoring the printing device, the technique does not discover the capabilities of the printing device. Accordingly, other products have been developed, such as such as Sharp® Corporation's EZ Cluster v1.0. The printer monitor polls the printing device to determine its capabilities, such as locality (e.g., printer name, print queue, IP address, location description, owner, commentary, etc.), PDL Interpreters (e.g., raster, PDL (PCL, Postscript), etc.), imaging (e.g., printable area, color vs. black & white, resolution (dpi), etc.), collation (e.g., copy collation, face up, etc.), special printing (e.g., duplex, booklet, N-up, etc.), and finisher (e.g., hole punch, stapling, stitch, etc.). While this technique solves the problem of monitoring the printing device, it cannot discover alternate printing devices.
Other available techniques include alternately using an interrupt/trap model vs. polling. Such techniques have the advantage of generating less traffic on a network and responding in real time. In particular, the printing device has a protocol that supports a registration service, where clients can register that they be interrupted for specific events (i.e., traps). A simple network management protocol (“SNMP”) is an example of such a service. However, this technique also includes undesirable features.
Thus, while techniques currently exist that are used to monitor a print job, challenges still exist. Accordingly, it would be an improvement in the art to augment or even replace current techniques with other techniques.